package com.ztesoft.web.filecommon.db.arg;

import java.util.*;
import java.math.*;
import org.apache.commons.lang.*;

public class DmFDetailArg {
    private String pk_name = "DETAIL_ID";

    private String orderByClause;

    private String groupByClause;

    private String columns;

    private String countsql1;

    private String countsql2;

    private boolean distinct;

    private int rowStart = 0;

    private int rowEnd = 10;
    
    private String tableName;
    
    private int limit;

    public String getTableName() {
		return tableName;
	}

    /**
     * 设置表名
     * @param tableName
     */
	public void setTableName(String tableName) {
		this.tableName = tableName;
	}

	public int getLimit() {
		return limit;
	}

	/**
	 * 设置限制大小
	 * @param limit
	 */
	public void setLimit(int limit) {
		this.limit = limit;
	}

	private List<DmFDetailCriteria> oredCriteria;

    public DmFDetailArg() {
        oredCriteria = new ArrayList<DmFDetailCriteria>();
    }

    public void setPk_name(String pk_name) {
        this.pk_name = StringEscapeUtils.escapeSql(pk_name);
    }

    public String getPk_name() {
        return pk_name;
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = StringEscapeUtils.escapeSql(orderByClause);
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setGroupByClause(String groupByClause) {
        this.groupByClause = StringEscapeUtils.escapeSql(groupByClause);
    }

    public String geGroupByClause() {
        return groupByClause;
    }

    public void setColumns(String columns) {
        this.columns = StringEscapeUtils.escapeSql(columns);
    }

    public String geColumns() {
        return columns;
    }

    public void setCountsql1(String countsql1) {
        this.countsql1 = StringEscapeUtils.escapeSql(countsql1);
    }

    public String geCountsql1() {
        return countsql1;
    }

    public void setCountsql2(String countsql2) {
        this.countsql2 = StringEscapeUtils.escapeSql(countsql2);
    }

    public String geCountsql2() {
        return countsql2;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public void setRowStart(int rowStart) {
        this.rowStart = rowStart;
    }

    public void setRowEnd(int rowEnd) {
        this.rowEnd = rowEnd;
    }

    public int getRowStart() {
        return rowStart;
    }

    public int getRowEnd() {
        return rowEnd;
    }

    public List<DmFDetailCriteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(DmFDetailCriteria criteria) {
        oredCriteria.add(criteria);
    }

    public DmFDetailCriteria or() {
    	DmFDetailCriteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public DmFDetailCriteria createCriteria() {
    	DmFDetailCriteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected DmFDetailCriteria createCriteriaInternal() {
    	DmFDetailCriteria criteria = new DmFDetailCriteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        groupByClause = null;
        columns = null;
        countsql1 = null;
        countsql2 = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<DmFDetailCriterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<DmFDetailCriterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<DmFDetailCriterion> getAllCriteria() {
            return criteria;
        }

        public List<DmFDetailCriterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new DmFDetailCriterion(condition));
        }

        protected void addCriterion(String condition, Object value,
                String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property
                        + " cannot be null");
            }
            criteria.add(new DmFDetailCriterion(condition, value));
        }

        protected void addCriterion(String condition, Object value,
                String property, int likeType) {
            if (value == null) {
                throw new RuntimeException("Value for " + property
                        + " cannot be null");
            }
            criteria.add(new DmFDetailCriterion(condition, value, likeType));
        }

        protected void addCriterion(String condition, Object value1,
                Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property
                        + " cannot be null");
            }
            criteria.add(new DmFDetailCriterion(condition, value1, value2));
        }

        public DmFDetailCriteria andCriterionEqualTo(String criterion) {
            if (StringUtils.isBlank(criterion)) {
                criterion = "1=1";
            }
            addCriterion(criterion);
            return (DmFDetailCriteria) this;
        }
        public DmFDetailCriteria andDetailIdIsNull() {
            addCriterion("DETAIL_ID is null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdIsNotNull() {
            addCriterion("DETAIL_ID is not null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdEqualTo(Integer value) {
            addCriterion("DETAIL_ID =", value, "DETAIL_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdNotEqualTo(Integer value) {
            addCriterion("DETAIL_ID <>", value, "DETAIL_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdGreaterThan(Integer value) {
            addCriterion("DETAIL_ID >", value, "DETAIL_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("DETAIL_ID >=", value, "DETAIL_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdLessThan(Integer value) {
            addCriterion("DETAIL_ID <", value, "DETAIL_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdLessThanOrEqualTo(Integer value) {
            addCriterion("DETAIL_ID <=", value, "DETAIL_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdLike(Integer value) {
            addCriterion("DETAIL_ID like ", value, "DETAIL_ID", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdNotLike(Integer value) {
            addCriterion("DETAIL_ID  not like ", value, "DETAIL_ID", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdLeftLike(Integer value) {
            addCriterion("DETAIL_ID like ", value, "DETAIL_ID", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdNotLeftLike(Integer value) {
            addCriterion("DETAIL_ID  not like ", value, "DETAIL_ID", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdRightLike(Integer value) {
            addCriterion("DETAIL_ID like ", value, "DETAIL_ID", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdNotRightLike(Integer value) {
            addCriterion("DETAIL_ID  not like ", value, "DETAIL_ID", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdIn(List<Integer> values) {
            addCriterion("DETAIL_ID  in ", values, "DETAIL_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdNotIn(List<Integer> values) {
            addCriterion("DETAIL_ID not in ", values, "DETAIL_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdBetween(Integer value1, Integer value2) {
            addCriterion("DETAIL_ID between ", value1, value2, "DETAIL_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDetailIdNotBetween(Integer value1, Integer value2) {
            addCriterion("DETAIL_ID not between ", value1, value2, "DETAIL_ID");
            return (DmFDetailCriteria) this;
        }
        public DmFDetailCriteria andTrackIdIsNull() {
            addCriterion("TRACK_ID is null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdIsNotNull() {
            addCriterion("TRACK_ID is not null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdEqualTo(Integer value) {
            addCriterion("TRACK_ID =", value, "TRACK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdNotEqualTo(Integer value) {
            addCriterion("TRACK_ID <>", value, "TRACK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdGreaterThan(Integer value) {
            addCriterion("TRACK_ID >", value, "TRACK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("TRACK_ID >=", value, "TRACK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdLessThan(Integer value) {
            addCriterion("TRACK_ID <", value, "TRACK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdLessThanOrEqualTo(Integer value) {
            addCriterion("TRACK_ID <=", value, "TRACK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdLike(Integer value) {
            addCriterion("TRACK_ID like ", value, "TRACK_ID", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdNotLike(Integer value) {
            addCriterion("TRACK_ID  not like ", value, "TRACK_ID", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdLeftLike(Integer value) {
            addCriterion("TRACK_ID like ", value, "TRACK_ID", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdNotLeftLike(Integer value) {
            addCriterion("TRACK_ID  not like ", value, "TRACK_ID", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdRightLike(Integer value) {
            addCriterion("TRACK_ID like ", value, "TRACK_ID", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdNotRightLike(Integer value) {
            addCriterion("TRACK_ID  not like ", value, "TRACK_ID", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdIn(List<Integer> values) {
            addCriterion("TRACK_ID  in ", values, "TRACK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdNotIn(List<Integer> values) {
            addCriterion("TRACK_ID not in ", values, "TRACK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdBetween(Integer value1, Integer value2) {
            addCriterion("TRACK_ID between ", value1, value2, "TRACK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andTrackIdNotBetween(Integer value1, Integer value2) {
            addCriterion("TRACK_ID not between ", value1, value2, "TRACK_ID");
            return (DmFDetailCriteria) this;
        }
        public DmFDetailCriteria andDmTaskIdIsNull() {
            addCriterion("DM_TASK_ID is null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdIsNotNull() {
            addCriterion("DM_TASK_ID is not null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdEqualTo(Integer value) {
            addCriterion("DM_TASK_ID =", value, "DM_TASK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdNotEqualTo(Integer value) {
            addCriterion("DM_TASK_ID <>", value, "DM_TASK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdGreaterThan(Integer value) {
            addCriterion("DM_TASK_ID >", value, "DM_TASK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("DM_TASK_ID >=", value, "DM_TASK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdLessThan(Integer value) {
            addCriterion("DM_TASK_ID <", value, "DM_TASK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdLessThanOrEqualTo(Integer value) {
            addCriterion("DM_TASK_ID <=", value, "DM_TASK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdLike(Integer value) {
            addCriterion("DM_TASK_ID like ", value, "DM_TASK_ID", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdNotLike(Integer value) {
            addCriterion("DM_TASK_ID  not like ", value, "DM_TASK_ID", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdLeftLike(Integer value) {
            addCriterion("DM_TASK_ID like ", value, "DM_TASK_ID", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdNotLeftLike(Integer value) {
            addCriterion("DM_TASK_ID  not like ", value, "DM_TASK_ID", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdRightLike(Integer value) {
            addCriterion("DM_TASK_ID like ", value, "DM_TASK_ID", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdNotRightLike(Integer value) {
            addCriterion("DM_TASK_ID  not like ", value, "DM_TASK_ID", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdIn(List<Integer> values) {
            addCriterion("DM_TASK_ID  in ", values, "DM_TASK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdNotIn(List<Integer> values) {
            addCriterion("DM_TASK_ID not in ", values, "DM_TASK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdBetween(Integer value1, Integer value2) {
            addCriterion("DM_TASK_ID between ", value1, value2, "DM_TASK_ID");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andDmTaskIdNotBetween(Integer value1, Integer value2) {
            addCriterion("DM_TASK_ID not between ", value1, value2, "DM_TASK_ID");
            return (DmFDetailCriteria) this;
        }
        public DmFDetailCriteria andAbsolutePathIsNull() {
            addCriterion("ABSOLUTE_PATH is null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathIsNotNull() {
            addCriterion("ABSOLUTE_PATH is not null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathEqualTo(String value) {
            addCriterion("ABSOLUTE_PATH =", value, "ABSOLUTE_PATH");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathNotEqualTo(String value) {
            addCriterion("ABSOLUTE_PATH <>", value, "ABSOLUTE_PATH");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathGreaterThan(String value) {
            addCriterion("ABSOLUTE_PATH >", value, "ABSOLUTE_PATH");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathGreaterThanOrEqualTo(String value) {
            addCriterion("ABSOLUTE_PATH >=", value, "ABSOLUTE_PATH");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathLessThan(String value) {
            addCriterion("ABSOLUTE_PATH <", value, "ABSOLUTE_PATH");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathLessThanOrEqualTo(String value) {
            addCriterion("ABSOLUTE_PATH <=", value, "ABSOLUTE_PATH");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathLike(String value) {
            addCriterion("ABSOLUTE_PATH like ", value, "ABSOLUTE_PATH", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathNotLike(String value) {
            addCriterion("ABSOLUTE_PATH  not like ", value, "ABSOLUTE_PATH", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathLeftLike(String value) {
            addCriterion("ABSOLUTE_PATH like ", value, "ABSOLUTE_PATH", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathNotLeftLike(String value) {
            addCriterion("ABSOLUTE_PATH  not like ", value, "ABSOLUTE_PATH", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathRightLike(String value) {
            addCriterion("ABSOLUTE_PATH like ", value, "ABSOLUTE_PATH", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathNotRightLike(String value) {
            addCriterion("ABSOLUTE_PATH  not like ", value, "ABSOLUTE_PATH", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathIn(List<String> values) {
            addCriterion("ABSOLUTE_PATH  in ", values, "ABSOLUTE_PATH");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathNotIn(List<String> values) {
            addCriterion("ABSOLUTE_PATH not in ", values, "ABSOLUTE_PATH");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathBetween(String value1, String value2) {
            addCriterion("ABSOLUTE_PATH between ", value1, value2, "ABSOLUTE_PATH");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andAbsolutePathNotBetween(String value1, String value2) {
            addCriterion("ABSOLUTE_PATH not between ", value1, value2, "ABSOLUTE_PATH");
            return (DmFDetailCriteria) this;
        }
        public DmFDetailCriteria andFileTypeIsNull() {
            addCriterion("FILE_TYPE is null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeIsNotNull() {
            addCriterion("FILE_TYPE is not null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeEqualTo(String value) {
            addCriterion("FILE_TYPE =", value, "FILE_TYPE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeNotEqualTo(String value) {
            addCriterion("FILE_TYPE <>", value, "FILE_TYPE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeGreaterThan(String value) {
            addCriterion("FILE_TYPE >", value, "FILE_TYPE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeGreaterThanOrEqualTo(String value) {
            addCriterion("FILE_TYPE >=", value, "FILE_TYPE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeLessThan(String value) {
            addCriterion("FILE_TYPE <", value, "FILE_TYPE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeLessThanOrEqualTo(String value) {
            addCriterion("FILE_TYPE <=", value, "FILE_TYPE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeLike(String value) {
            addCriterion("FILE_TYPE like ", value, "FILE_TYPE", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeNotLike(String value) {
            addCriterion("FILE_TYPE  not like ", value, "FILE_TYPE", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeLeftLike(String value) {
            addCriterion("FILE_TYPE like ", value, "FILE_TYPE", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeNotLeftLike(String value) {
            addCriterion("FILE_TYPE  not like ", value, "FILE_TYPE", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeRightLike(String value) {
            addCriterion("FILE_TYPE like ", value, "FILE_TYPE", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeNotRightLike(String value) {
            addCriterion("FILE_TYPE  not like ", value, "FILE_TYPE", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeIn(List<String> values) {
            addCriterion("FILE_TYPE  in ", values, "FILE_TYPE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeNotIn(List<String> values) {
            addCriterion("FILE_TYPE not in ", values, "FILE_TYPE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeBetween(String value1, String value2) {
            addCriterion("FILE_TYPE between ", value1, value2, "FILE_TYPE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFileTypeNotBetween(String value1, String value2) {
            addCriterion("FILE_TYPE not between ", value1, value2, "FILE_TYPE");
            return (DmFDetailCriteria) this;
        }
        public DmFDetailCriteria andFilesizeIsNull() {
            addCriterion("FILESIZE is null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeIsNotNull() {
            addCriterion("FILESIZE is not null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeEqualTo(BigDecimal value) {
            addCriterion("FILESIZE =", value, "FILESIZE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeNotEqualTo(BigDecimal value) {
            addCriterion("FILESIZE <>", value, "FILESIZE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeGreaterThan(BigDecimal value) {
            addCriterion("FILESIZE >", value, "FILESIZE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("FILESIZE >=", value, "FILESIZE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeLessThan(BigDecimal value) {
            addCriterion("FILESIZE <", value, "FILESIZE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeLessThanOrEqualTo(BigDecimal value) {
            addCriterion("FILESIZE <=", value, "FILESIZE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeLike(BigDecimal value) {
            addCriterion("FILESIZE like ", value, "FILESIZE", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeNotLike(BigDecimal value) {
            addCriterion("FILESIZE  not like ", value, "FILESIZE", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeLeftLike(BigDecimal value) {
            addCriterion("FILESIZE like ", value, "FILESIZE", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeNotLeftLike(BigDecimal value) {
            addCriterion("FILESIZE  not like ", value, "FILESIZE", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeRightLike(BigDecimal value) {
            addCriterion("FILESIZE like ", value, "FILESIZE", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeNotRightLike(BigDecimal value) {
            addCriterion("FILESIZE  not like ", value, "FILESIZE", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeIn(List<BigDecimal> values) {
            addCriterion("FILESIZE  in ", values, "FILESIZE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeNotIn(List<BigDecimal> values) {
            addCriterion("FILESIZE not in ", values, "FILESIZE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("FILESIZE between ", value1, value2, "FILESIZE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesizeNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("FILESIZE not between ", value1, value2, "FILESIZE");
            return (DmFDetailCriteria) this;
        }
        public DmFDetailCriteria andFilenameIsNull() {
            addCriterion("FILENAME is null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameIsNotNull() {
            addCriterion("FILENAME is not null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameEqualTo(String value) {
            addCriterion("FILENAME =", value, "FILENAME");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameNotEqualTo(String value) {
            addCriterion("FILENAME <>", value, "FILENAME");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameGreaterThan(String value) {
            addCriterion("FILENAME >", value, "FILENAME");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameGreaterThanOrEqualTo(String value) {
            addCriterion("FILENAME >=", value, "FILENAME");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameLessThan(String value) {
            addCriterion("FILENAME <", value, "FILENAME");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameLessThanOrEqualTo(String value) {
            addCriterion("FILENAME <=", value, "FILENAME");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameLike(String value) {
            addCriterion("FILENAME like ", value, "FILENAME", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameNotLike(String value) {
            addCriterion("FILENAME  not like ", value, "FILENAME", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameLeftLike(String value) {
            addCriterion("FILENAME like ", value, "FILENAME", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameNotLeftLike(String value) {
            addCriterion("FILENAME  not like ", value, "FILENAME", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameRightLike(String value) {
            addCriterion("FILENAME like ", value, "FILENAME", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameNotRightLike(String value) {
            addCriterion("FILENAME  not like ", value, "FILENAME", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameIn(List<String> values) {
            addCriterion("FILENAME  in ", values, "FILENAME");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameNotIn(List<String> values) {
            addCriterion("FILENAME not in ", values, "FILENAME");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameBetween(String value1, String value2) {
            addCriterion("FILENAME between ", value1, value2, "FILENAME");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilenameNotBetween(String value1, String value2) {
            addCriterion("FILENAME not between ", value1, value2, "FILENAME");
            return (DmFDetailCriteria) this;
        }
        public DmFDetailCriteria andFilesCountIsNull() {
            addCriterion("FILES_COUNT is null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountIsNotNull() {
            addCriterion("FILES_COUNT is not null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountEqualTo(String value) {
            addCriterion("FILES_COUNT =", value, "FILES_COUNT");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountNotEqualTo(String value) {
            addCriterion("FILES_COUNT <>", value, "FILES_COUNT");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountGreaterThan(String value) {
            addCriterion("FILES_COUNT >", value, "FILES_COUNT");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountGreaterThanOrEqualTo(String value) {
            addCriterion("FILES_COUNT >=", value, "FILES_COUNT");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountLessThan(String value) {
            addCriterion("FILES_COUNT <", value, "FILES_COUNT");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountLessThanOrEqualTo(String value) {
            addCriterion("FILES_COUNT <=", value, "FILES_COUNT");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountLike(String value) {
            addCriterion("FILES_COUNT like ", value, "FILES_COUNT", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountNotLike(String value) {
            addCriterion("FILES_COUNT  not like ", value, "FILES_COUNT", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountLeftLike(String value) {
            addCriterion("FILES_COUNT like ", value, "FILES_COUNT", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountNotLeftLike(String value) {
            addCriterion("FILES_COUNT  not like ", value, "FILES_COUNT", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountRightLike(String value) {
            addCriterion("FILES_COUNT like ", value, "FILES_COUNT", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountNotRightLike(String value) {
            addCriterion("FILES_COUNT  not like ", value, "FILES_COUNT", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountIn(List<String> values) {
            addCriterion("FILES_COUNT  in ", values, "FILES_COUNT");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountNotIn(List<String> values) {
            addCriterion("FILES_COUNT not in ", values, "FILES_COUNT");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountBetween(String value1, String value2) {
            addCriterion("FILES_COUNT between ", value1, value2, "FILES_COUNT");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andFilesCountNotBetween(String value1, String value2) {
            addCriterion("FILES_COUNT not between ", value1, value2, "FILES_COUNT");
            return (DmFDetailCriteria) this;
        }
        public DmFDetailCriteria andStateIsNull() {
            addCriterion("STATE is null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateIsNotNull() {
            addCriterion("STATE is not null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateEqualTo(String value) {
            addCriterion("STATE =", value, "STATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateNotEqualTo(String value) {
            addCriterion("STATE <>", value, "STATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateGreaterThan(String value) {
            addCriterion("STATE >", value, "STATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateGreaterThanOrEqualTo(String value) {
            addCriterion("STATE >=", value, "STATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateLessThan(String value) {
            addCriterion("STATE <", value, "STATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateLessThanOrEqualTo(String value) {
            addCriterion("STATE <=", value, "STATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateLike(String value) {
            addCriterion("STATE like ", value, "STATE", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateNotLike(String value) {
            addCriterion("STATE  not like ", value, "STATE", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateLeftLike(String value) {
            addCriterion("STATE like ", value, "STATE", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateNotLeftLike(String value) {
            addCriterion("STATE  not like ", value, "STATE", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateRightLike(String value) {
            addCriterion("STATE like ", value, "STATE", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateNotRightLike(String value) {
            addCriterion("STATE  not like ", value, "STATE", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateIn(List<String> values) {
            addCriterion("STATE  in ", values, "STATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateNotIn(List<String> values) {
            addCriterion("STATE not in ", values, "STATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateBetween(String value1, String value2) {
            addCriterion("STATE between ", value1, value2, "STATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateNotBetween(String value1, String value2) {
            addCriterion("STATE not between ", value1, value2, "STATE");
            return (DmFDetailCriteria) this;
        }
        public DmFDetailCriteria andStateDateIsNull() {
            addCriterion("STATE_DATE is null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateIsNotNull() {
            addCriterion("STATE_DATE is not null");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateEqualTo(Date value) {
            addCriterion("STATE_DATE =", value, "STATE_DATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateNotEqualTo(Date value) {
            addCriterion("STATE_DATE <>", value, "STATE_DATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateGreaterThan(Date value) {
            addCriterion("STATE_DATE >", value, "STATE_DATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("STATE_DATE >=", value, "STATE_DATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateLessThan(Date value) {
            addCriterion("STATE_DATE <", value, "STATE_DATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateLessThanOrEqualTo(Date value) {
            addCriterion("STATE_DATE <=", value, "STATE_DATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateLike(Date value) {
            addCriterion("STATE_DATE like ", value, "STATE_DATE", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateNotLike(Date value) {
            addCriterion("STATE_DATE  not like ", value, "STATE_DATE", 1);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateLeftLike(Date value) {
            addCriterion("STATE_DATE like ", value, "STATE_DATE", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateNotLeftLike(Date value) {
            addCriterion("STATE_DATE  not like ", value, "STATE_DATE", 0);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateRightLike(Date value) {
            addCriterion("STATE_DATE like ", value, "STATE_DATE", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateNotRightLike(Date value) {
            addCriterion("STATE_DATE  not like ", value, "STATE_DATE", 2);
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateIn(List<Date> values) {
            addCriterion("STATE_DATE  in ", values, "STATE_DATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateNotIn(List<Date> values) {
            addCriterion("STATE_DATE not in ", values, "STATE_DATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateBetween(Date value1, Date value2) {
            addCriterion("STATE_DATE between ", value1, value2, "STATE_DATE");
            return (DmFDetailCriteria) this;
        }

        public DmFDetailCriteria andStateDateNotBetween(Date value1, Date value2) {
            addCriterion("STATE_DATE not between ", value1, value2, "STATE_DATE");
            return (DmFDetailCriteria) this;
        }

    }

    public static class DmFDetailCriteria extends GeneratedCriteria {

        protected DmFDetailCriteria() {
            super();
        }
    }

    public static class DmFDetailCriterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected DmFDetailCriterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }
        protected DmFDetailCriterion(String condition, Object value, int likeType) {
            this.condition = condition;
            if (likeType == 0) {
                this.value = "%" + value;
            }
            else if (likeType == 1) {
                this.value = "%" + value + "%";
            }
            else {
                this.value = value + "%";
            }
            this.typeHandler = null;
            this.singleValue = true;

        }

        protected DmFDetailCriterion(String condition, Object value,
                String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            }
            else {
                this.singleValue = true;
            }
        }

        protected DmFDetailCriterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected DmFDetailCriterion(String condition, Object value,
                Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected DmFDetailCriterion(String condition, Object value,
                Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}